﻿
namespace AutoClub.Models
{
    /// <summary>
    /// Interfaz para realizar el mapeo entre models y viewmodels
    /// </summary>
    public interface IModelMapper
    {
        /// <summary>
        /// Mapea un objeto fuente a un objeto destino
        /// </summary>
        /// <typeparam name="TSource">Tipo del objeto fuente</typeparam>
        /// <typeparam name="TDestination">Tipo del objeto destino</typeparam>
        /// <param name="source">instancia del objeto fuente</param>
        /// <returns>Instancia del objeto destino</returns>
        TDestination Map<TSource, TDestination>(TSource source);
    }
}
